Murphy: An Environment for Advance Identification of Run-time Failures
نویسندگان
چکیده
Applications do not typically view the kernel as a source of bad input. However, the kernel can behave in unusual (yet permissible) ways for which applications are badly unprepared. We present Murphy, a language-agnostic tool that helps developers discover and isolate run-time failures in their programs by simulating difficult-to-reproduce but completely-legitimate interactions between the application and the kernel. Murphy makes it easy to enable or disable sets of kernel interactions, called gremlins, so developers can focus on the failure scenarios that are important to them. Gremlins are implemented using the ptrace interface, intercepting and potentially modifying an application’s system call invocation while requiring no invasive changes to the host machine. We show how to use Murphy in a variety of modes to find different classes of errors, present examples of the kernel interactions that are tested, and explain how to apply delta debugging techniques to isolate the code causing the failure. While our primary goal was the development of a tool to assist in new software development, we successfully demonstrate that Murphy also has the capability to find bugs in hardened, widely-deployed software.
منابع مشابه
Enforcing Murphy's Law for Advance Identification of Run-time Failures
Applications do not typically view the kernel as a source of bad input. However, the kernel can behave in unusual (yet permissible) ways for which applications are badly unprepared. We present Murphy, a language-agnostic tool that helps developers discover and isolate run-time failures in their programs by simulating difficult-to-reproduce but completely-legitimate interactions between the appl...
متن کاملRun-time reconfiguration in VR Juggler
Most current virtual reality system designs use an overly static method of configuration. The configuration is specified in advance and once an application has started running in the system, it is not possible to change the its initial setup. This limits the abilities of the VR system to adapt to runtime changes and recover from system failures. The VR Juggler virtual reality development enviro...
متن کاملReal-time Scheduling of a Flexible Manufacturing System using a Two-phase Machine Learning Algorithm
The static and analytic scheduling approach is very difficult to follow and is not always applicable in real-time. Most of the scheduling algorithms are designed to be established in offline environment. However, we are challenged with three characteristics in real cases: First, problem data of jobs are not known in advance. Second, most of the shop’s parameters tend to be stochastic. Third, th...
متن کاملMaintainability Policy for Deteriorating System with Inspection and Common Cause Failure (TECHNICAL NOTE)
A condition based preventive and corrective maintenance policy is proposed for a continuously operating system. The condition of the system is assumed to deteriorate with time. The model incorporates both deterioration as well as random common cause failures. The deterioration stages are modeled as discrete state processes. The system is put to random inspection to know the condition. The mean ...
متن کاملشناسایی نقطه تغییر در بردار میانگین فرآیند نرمال دومتغیره با تغییرات مونوتونیک
When a control chart shows an out-of-control condition, a search begins to identify and eliminate the root cause(s) of the process disturbance. The time when the disturbance has manifested itself to the process is referred to as change point. Identification of the change point is considered as an essential step in analyzing and eliminating the disturbance source(s) effectively. When a process...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012